package com.qf.java2201.service.impl;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.qf.java2201.common.PageVo;
import com.qf.java2201.mapper.StoreMapper;
import com.qf.java2201.pojo.Store;
import com.qf.java2201.service.StoreService;
import com.qf.java2201.vo.PieVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

@Service("storeService")
public class StoreServiceImpl implements StoreService {
    @Autowired
    private StoreMapper storeMapper;

    @Override
    public PageVo<Store> getPageData(Map<String, Object> params) {
        String page = (String) params.get("page");
        String limit = (String) params.get("limit");
        //mybatis
        PageHelper.startPage(Integer.parseInt(page),Integer.parseInt(limit));

        List<Store> stores = storeMapper.selectByParams(params);

        PageInfo<Store> storesPageInfo = new PageInfo<>(stores);

        // 把分页数据 封装到 PageVo      这个 PageVo  符合 layui 的  列表数据格式
        PageVo<Store> storesPageVo = new PageVo<>();
        storesPageVo.setData(storesPageInfo.getList());
        storesPageVo.setCode(0);
        storesPageVo.setCount(storesPageInfo.getTotal());
        storesPageVo.setMsg("收藏列表数据");
        return storesPageVo;
    }

    @Override
    public int addStore(Store store) {
        return storeMapper.addStore(store);
    }

    @Override
    public int deleteStore(int collect_id) {
        return storeMapper.deleteStore(collect_id);
    }

    @Override
    public int updateStore(Store store) {
        return storeMapper.updateStore(store);
    }

    @Override
    public List<Store> selectStore(Store store) {
        return storeMapper.selectStore(store);
    }

    @Override
    public List<PieVo> echartsStore() {
        return storeMapper.echartsStore();
    }

    @Override
    public List<Store> selectList(Store store) {
        return storeMapper.selectList(store);
    }

    @Override
    public void addStores(List<Store> stores) {
        // 批量添加
        storeMapper.addStores(stores);
    }

    @Override
    public List<Store> selectStoreList(Store store) {
        return storeMapper.selectStoreList(store);
    }

}
